﻿/*信安某次考试题*/
#include<stdio.h>
#include<stdlib.h>
#define N 3
typedef struct GAME{
	int id;
	char name[10];
	float sor;
}game;
void change(game he[], int n);
void Write(game he[], int n);
int main()
{
	game he[10];
	int i, j,all,num[5];
	puts("Please input user's score:");
	for (i = 0; i < N; i++)
	{
		all = 0;
		printf("Input id and name:");
		scanf("%d %s", &he[i].id, &he[i].name);
		printf("Input 5 scores:");
		for (j = 0; j < 5; j++)
		{
			scanf("%d", &num[i]);
			all += num[i];
		}
		he[i].sor = (float)all / 5.;
	}
	change(he, N);
	Write(he, N);
	system("pause");
	return 0;
}
void change(game he[], int n)
{
	int k, l;
	for (l = 0; l < 10; l++)
	{
		for (k = l + 1; k < 10; k++)
		{
			if (he[l].sor < he[k].sor)
			{
				game temp = he[l];
				he[l] = he[k];
				he[k] = temp;
			}
		}
	}
}

void Write(game he[], int n)
{
	FILE *fp;
	if ((fp = fopen("math", "a+")) == NULL)
	{
		fprintf(stdout, "error!\n");
		exit(1);
	}
	int i,j;
	for ( i = 0; i < 3; i++)
		fprintf(fp, "No.%d:%d %s %.2f\n", i+1, he[i].id, he[i].name, he[i].sor);
	for ( j = 0; j < 3; j++)
	{
		printf("No.%d:%d %s %.2f\n", j + 1, he[j].id, he[j].name, he[j].sor);
	}
}
/*
(20分) 某比赛有10个选手参赛
（包含编号、姓名(长度小于10)和最终得分），
有5名评委给选手打分，编程完成：
（1）实现评分过程，选手的最终得分为5名评委打分的平均分。（10分）
（2）对比赛结果进行降序排列，
并将前三名选手的信息存入result.txt文件中。（10分）
程序运行结果示例：
Please input user's score:
Input id and name:1 a
Input 5 scores:8 8 8 9 7
Input id and name:2 b
Input 5 scores:8 6 5 7 8
Input id and name:3 c
Input 5 scores:8 9 6 7 8
Input id and name:4 d
Input 5 scores:9 8 9 8 9
Input id and name:5 e
Input 5 scores:9 9 9 9 9
Input id and name:6 f
Input 5 scores:8 6 7 8 6
Input id and name:7 g
Input 5 scores:8 7 8 8 8
Input id and name:8 h
Input 5 scores:9 8 7 8 7
Input id and name:9 i
Input 5 scores:8 9 8 9 8
Input id and name:10 j
Input 5 scores:8 8 8 8 9
result.txt文件中的内容为：
No.1:5 e 9.00
No.2:4 d 8.60
No.3:9 i 8.40

输入提示："Please input user's score:\n"
输入提示："Input id and name:"
输入格式："%d%s"
输入提示："Input %d scores:"
输入格式："%f"
result.txt文件中的内容的输入输出：
输出提示："error!\n"
输出格式："No.%d:%d %s %.2f\n"

*/